
namespace Ns.Data.Entity
{
    /// <summary>
    /// The interface a class must implement if it requires update information audit.
    /// </summary>
    public interface IUpdateEntity<TUpdatedBy, TUpdatedOn>
    {
        /// <summary>
        /// Gets or sets the last user who has updated the current <see cref="T:System.Object"/>. 
        /// </summary>
        /// <value>The last updater.</value>
        TUpdatedBy UpdatedBy { get; set; }

        /// <summary>
        /// Gets or sets the last update date and time of the current <see cref="T:System.Object"/>.
        /// </summary>
        /// <value>The last update date and time.</value>
        TUpdatedOn UpdatedOn { get; set; }
    }
}
